--- title: "21. Merge Two Sorted Lists" created: 2025-12-17 --- # 21. Merge Two Sorted Lists ## 题目 [**21. Merge Two Sorted Lists**](https://leetcode.com/problems/merge-two-sorted-lists/) ![[image-3adc6189.png]] ## 思路分析 类似于归并排序 ## 代码实现 ```java /** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode() {} * ListNode(int val) { this.val = val; } * ListNode(int val, ListNode next) { this.val = val; this.next = next; } * } */ class Solution { public ListNode mergeTwoLists(ListNode list1, ListNode list2) { ListNode head = new ListNode(-1); ListNode tail = head; while(list1!=null && list2!=null){ if(list1.val <= list2.val){ tail.next = list1; list1=list1.next; }else{ tail.next = list2; list2=list2.next; } tail=tail.next; } if(list1!=null){ tail.next=list1; }else{ tail.next=list2; } return head.next; } } ``` ## 同类题型 ## 视频讲解